package com.example.apartment.service;

import com.example.apartment.domain.Admin;
import com.example.apartment.domain.Bed;

import java.util.List;

/**
 * 宿舍床位业务层接口
 *
 * @author wuzexin
 * @date 2021/11/2 13:31
 */
public interface BedService {

    /**
     * 创建床位
     *
     * @param admin        管理员信息
     * @param bedNum       床位号
     * @param roomNum      宿舍号
     * @param buildingName 宿舍楼名字
     * @return 返回床位信息
     */
    Bed create(Admin admin, Integer bedNum, Integer roomNum, String buildingName);

    /**
     * 修改宿舍床号
     *
     * @param admin  管理员用户信息
     * @param id     床位id
     * @param bedNum 床号
     * @return
     */
    Bed update(Admin admin, Integer id, Integer bedNum);

    /**
     * 删除宿舍床号
     *
     * @param admin 管理员用户信息
     * @param id    床位id
     */
    void delete(Admin admin, Integer id);

    /**
     * 查询所有床位信息
     *
     * @param admin 管理员用户信息
     * @return
     */
    List<Bed> select(Admin admin);

    /**
     * 根据buildingName查询所有床位信息
     *
     * @param admin
     * @param buildingName
     * @return
     */
    List<Bed> selectByBuildingName(Admin admin, String buildingName);
}
